Добавление и закрепление блоков CHANS и STRMS

God Mode:

Debugger			; Открыть отладчик для ввода данных
Dec				; Переключить отображение чисел в десятичный режим
Go To 23641			; Переместиться по памяти на нужный адрес

23627 <-- 23765			; Сместить область переменных за конец BASIC программы
23635 <-- 23765			; Сместить область начала BASIC программы PROG на 10 байт
23641 <-- 23766 23766		; Сместить буфер вводимой строки за конец переменных
23649 <-- 23768 23768 23768	; Сместить рабочие области за конец вводимой строки
23765 <-- 128 13 128		; Маркеры конца областей и ENTER

23754 <-- 30000 30100	; дописка новых блоков к массиву CHANS
23758 <-- X
23759 <-- 30200 30300
23763 <-- E
23764 <-- 128

23584 <-- 21 0		; закрепление нового блока за парой 5 и 9 в таблице STRMS
23592 <-- 26 0

30000 <-- 62 254 205 1 22 17 68 117 1 10 0	; программа для адреса-1 блока X (окончание текста)
30011 <-- 205 60 32 217 1 0 0 217 201 16 2
30022 <-- 66 32 75 65 80 69 84 69

30100 <-- 17 5 1 33 218 4 205 181 3 49 84 255	; программа для адреса-2 блока X (звук)
30112 <-- 237 115 61 92 253 203 2 158 195 118 27

30200 <-- 62 1 211 254 49 84 255 237 115 61 92	; программа для адреса-1 блока E (рамка)
30211 <-- 253 203 2 158 195 118 27

30300 <-- 62 254 205 1 22 17 120 118 1 26 0	; программа для адреса-2 блока E (начало текста)
30311 <-- 205 60 32 49 84 255 237 115 61 92
30321 <-- 253 203 2 158 195 118 27 16 3
30330 <-- HEBECTA CTPACTHO CTOHET ; в конце один пробел!
Trace						; Выйти и запустить программу

BASIC <-- 1 LET a$=INKEY$#9
BASIC <-- 2 INPUT #5;numep
BASIC <-- 3 PRINT #5;"ropog ragocmu"
BASIC <-- 4 LIST #9

BASIC <-- RUN ENTER


Assembler EmuZWin:

	ORG 30000

	LD A, 254		; Переключить на стандартный блок K
	CALL 5633
	LD DE, TEKCT		; адрес размещения текста
	LD BC, KOHETC-TEKCT	; количество символов, включая управляющие
	CALL 8252		; подпрограмма печати
	EXX
	LD BC, 0		; Обнулить BC для прохода сквозь остатки команды PRINT
	EXX
	RET

TEKCT: DEFB 16, 2, 'B KAPETE'
KOHETC:

        ORG 30100

	LD DE, 261
	LD HL, 1242
	CALL 949
	LD SP, 65364
	LD (23613), SP
	RES 3, (IY+2)
	JP 7030

        ORG 30200

        LD A, 1
        OUT (254), A
        LD SP, 65364
        LD (23613), SP
        RES 3, (IY+2)
        JP 7030

        ORG 30300

        LD A, 254               ; Переключить на стандартный блок K
        CALL 5633		; законным способом
        LD DE, TEKCT            ; адрес размещения текста
        LD BC, KOHETC-TEKCT     ; количество символов, включая управляющие
        CALL 8252               ; подпрограмма печати
        LD SP, 65364
        LD (23613), SP
        RES 3, (IY+2)		; выключить курсор в конце сообщения
        JP 7030			; приступить к выполнению следующей BASIC команды

TEKCT: DEFB 16, 3, 'HEBECTA CTPACTHO CTOHET '
KOHETC:
